package com.whcoding.base.project.service;


import com.whcoding.base.project.pojo.OrmDeptCondition;
import com.whcoding.base.project.pojo.OrmDeptVO;
import org.springframework.data.domain.Page;

import java.util.List;

/**
 * @author Manager
 */
public interface DeptService {

	/**
	 * 1.- 增加
	 * 新增数据
	 * @param deptVO
	 * @return
	 */
	boolean addDept(OrmDeptVO deptVO);

	/**
	 * 2.查询
	 * 根据主键查询数据
	 *
	 * @param id
	 * @return
	 */
	OrmDeptVO queryDeptById(Long id);

	/**
	 * 2.1 查询全部数据
	 *
	 * @return
	 */
	List<OrmDeptVO> queryAllDept();

	/**
	 * 3.修改
	 * update
	 *@param deptVO vo
	 * @return
	 */
	boolean updateDept(OrmDeptVO deptVO);

	/**
	 * 4. 删除
	 * 根据id 删除数据
	 * @param id 主键id
	 * @return
	 */
	boolean deleteDeptById(Long id);

	/**
	 * 假删除
	 * @param ids
	 */
	void deleteByIds(List<Long> ids);

	/**
	 * 主键存在则新增 反之则删除数据
	 * @param id
	 */
	void insertOrUpdateBatch(Long id);

	/**
	 * 保存CSV文件
	 */
	void saveCarrierCsvFile();
	/**
	 * 1.查询分页数据
	 * @param deptCondition
	 * @return
	 */
	Page<OrmDeptVO> findDeptByPage(OrmDeptCondition deptCondition);
}



